/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package src.j2ee.compumake.dao;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import src.j2ee.compumake.dominio.Interfaz;

/************************************************************************
 **                                                                    **
 ** Nombre: DAOInterfaz.java                                           **
 ** Version: v1.0.0                                                    **
 ** Autor: amado.cante                                                 **
 ** Creado: 20/04/2013                                                 **
 ** Modificado:                                                        **
 ** Diagrama:                                                          **
 ** Caso de uso:                                                       **
 **                                                                    **
 ***********************************************************************/
public class DAOInterfaz {
    private final static String TABLA_INTERFACES = "Interfaces";
    private static final String COLUMNA_ID = "idInterfaces";
    private static final String COLUMNA_INTERFAZ = "interfaz";
    private Connection conexion;
    private AccesoBaseDatos acceso = new AccesoBaseDatos();
    
    public DAOInterfaz(){
        this.conexion = acceso.abrirConexion();
    }
    
    public ArrayList<Interfaz> obtenerInterfaces(){
        ArrayList<Interfaz> interfaces;
        try{
            Statement sentencia = this.acceso.crearSentenciaBD(conexion);
            String query = "SELECT * FROM "+TABLA_INTERFACES;
            ResultSet resultado = sentencia.executeQuery(query);
            interfaces = new ArrayList<>();
            while(resultado.next()){
                int id = resultado.getInt(COLUMNA_ID);
                String interfaz = resultado.getString(COLUMNA_INTERFAZ);
                Interfaz i = new Interfaz(id, interfaz);
                interfaces.add(i);
            }
            return interfaces;
        }catch(SQLException sqlex){
            interfaces = new ArrayList<>();
            return interfaces;
        }finally{
            acceso.cerrarConexion(conexion);
        }
    }
    
    public Interfaz buscaInterfaz(int idInterfaz){
        try{
            Statement sentencia = this.acceso.crearSentenciaBD(conexion);
            String query = "SELECT * FROM "+TABLA_INTERFACES+" WHERE "+COLUMNA_ID+"='"+idInterfaz+"';";
            System.out.println("query: "+query);
            ResultSet resultado = sentencia.executeQuery(query);
            if(resultado.next()){
                int id = resultado.getInt(COLUMNA_ID);
                String interfaz = resultado.getString(COLUMNA_INTERFAZ);
                Interfaz i = new Interfaz(id, interfaz);
                return i;
            }else{
                return null;
            }
        }catch(SQLException sqlex){
            System.out.println("sqlex: "+sqlex);
            return null;
        }
        
    }
}
